#include <REGX52.H>

void delay_ms(unsigned int ms)
{
    unsigned int i, j;
    for (i = 0; i < ms; i++)
    {
        for (j = 0; j < 123; j++)
            ;
    }
}

void main()
{
    unsigned int i;
    while(1)
    {
        for(i=0;i<8;i++)
        {
            P2 = (0x01 << i);
            delay_ms(50);
            P2 = 0x00;
        }
        
        for(i=0;i<8;i++)
        {
            P3 = ~(0x01 << i);
            delay_ms(50);
            P3 = 0xFF;
        }
    }
}